#ifndef COLOR_H
#define COLOR_H
namespace RayTracer
{
    class Color
    {
    public:
	float r;
	float g;
	float b;
	float a;

	Color();
	Color(float r, float g, float b);
	Color(float r, float g, float b, float a);
	Color(const Color &prototype);

	static Color White();
	static Color Black();
	static Color Gray();
	static Color Red();
	static Color Green();
	static Color Blue();
	static Color Yellow();
	static Color Cyan();

	static Color Multiply(const Color *c, float scale);
	static Color Add(const Color *a, const Color *b);
	static void Clamp(Color *c);
	static void ToneMap(Color *c);
    };
};
#endif
